Generally, wireless communication networks suffer a disadvantage in comparison with wired communication networks because wireless communication networks must utilize valuable radio frequency spectrum for the transmission of signals to wireless mobile devices (including portable terminals such as computer terminals or personal communication devices). Spectrum is expensive to purchase as exemplified by the wireless communications RF spectrum sales of the 1990s. Moreover, the greater the application of uncompressed signals, power for transmitting signals in the purchased RF spectrum can be wasted along with the spectrum utilization increase. Further complicating and making the need for compression even greater in a wireless communication network, the applications for such mobile devices have greatly expanded as wireless communications have, in many instances, replaced wired communication devices because of the great, almost unbounded popularity of the devices and the features that such devices may provide. Consider, for example, currently available mobile devices providing input/output for taking and receiving digital photographs (which can be compressed in accordance with known JPEG compression techniques), receiving downloaded MPEG compressed movie streams for a subscriber's viewing pleasure, the opportunity to short text message to “buddy lists” of friends, associates and family members having mobile devices, download, store and play compressed digital music in stereo of the subscriber's choice and so on.
Also consider the differences between text compression, for example, the compression of a voice message converted to text or a text document or a text message versus JPEG or MPEG compression. The former needs to be lossless, that is, the message at the transmitter ideally should be perfectly reproduced at the receiver after compression and decompression. On the other hand, JPEG and MPEG image compression follow a different philosophy. The compression/decompression process need not be perfect and some original image data may be lost intentionally, but only such that the received image is practically identical to the transmitted image and any loss is not perceptible to the viewer.
In a virtual machine, bytecodes are known for representing the machine language of, for example, a Java virtual machine. The bytecode stream represents a sequence of instructions for the virtual machine. HTTP is a known protocol for internet address and command processing. In wireless communications involving the network, there is a need for compression of such data signals. These types of data streams are akin to text compression where there is a requirement for lossless compression/decompression processes.
Many of the new applications for mobile devices have centered around an implementation of a session initiation protocol (SIP) described, for example, by RFC 3261. SIP provides a protocol for negotiating session parameters between session endpoints, for example, such as setting up and tearing down Voice over IP sessions between VoIP phones or sessions in which a camera image is transmitted from one cell phone to another. Moreover, data signal transmission and data compression are also known from such well known compression algorithms as ZLIB (RFC 1950), DEFLATE (RFC 1951) and GZIP (RFC 1952), and other compression algorithms and techniques, all of which are well known to the Internet community at large.
More recently, progress has been made in the development of standard compression interfaces and techniques for signal compression as exemplified by the efforts described by RFC 3320 and RFC 3321. Also, recently, a session initiation protocol (SIP) and a session description protocol (SDP) static dictionary have been described in RFC 3485. Moreover, a so-called universal decompressor virtual machine (UDVM) has been described, much like a Java virtual machine, for running decompression algorithms and to provide almost unlimited flexibility for choosing how to compress/decompress a given item of data. With UDVM, both terminal ends, for example, two mobile devices exchanging photographs or a mobile device gaining access to a video-on-demand movie server must know what compression/decompression the other end is using for the data signal; otherwise, the compression/decompression provided by the UDVMs will not function at an optimum level. On the other hand, in SigComp as applied in SIP, headers as well as message bodies may be compressed. Yet, network elements need to read the SIP headers for routing and other purposes. Consequently, there is a problem with end-to-end transmission for SIP because a network element may have to decompress headers along a route to an end point. Consequently, there may be a problem with the applicability of SigComp end-to-end as would be required as applied in SIP.
Also, in accordance with the third generation partnership project, 3G PP, for the global system for mobile communications (GSM) and which can be used in related UMTS standards, an internet protocol (IP) multimedia subsystem (IMS) has been defined for multimedia applications, for example, per TS 23.228, 24.228 and related technical specifications. There is proposed, for example, a proxy call session control function (P-CSCF), an interrogating CSCF (I-CSCF) and a serving CSCF (S-CSCF). SIP messages between one's handset and its associated P-CSCF may be compressed as are SIP messages between another person's handset and its P-CSCF. But between P-CSCFs, the SIP messages are generally uncompressed because as explained above, the headers are needed for routing and there is limited motivation to apply SigComp to a portion of a message and not the whole. These control functions are known for use in home and visited networks by mobile devices for multimedia services as an outbound proxy (the first SIP-layer point of contact for a mobile device in, for example, a general packet radio service (GPRS) network). These control functions may be accessed by a mobile device that would want to engage in a real-time interactive multimedia application with a mobile device in the same or in another wireless communication network. The virtual machines such as the UDVM mentioned above are resident in, for example, the mobile device and the P-CSCF. The capabilities of both ends of a communication path should be consistent with one another to successfully restore compressed content to its original form.
Presence is becoming increasingly important to wireless network features and services. Presence relates to registration of a mobile device that is turned on and in a mode for receiving communications which may be standard voice calls or limited to receiving, for example, text messages from a “buddy.” As alluded to above, one or more “buddy lists” may be input by a wireless subscriber for friends, associates and family of the subscriber and used to signal “presence” information among “buddies.” The wireless subscriber will typically wish to receive updates regarding his/her buddies' presence status, as presence status is dynamic. For example, a college student may receive presence information indicating that a given buddy is currently not available for voice calls, but can receive text messages. Based on this information, the student signals that “buddy” by text message to meet him/her in the library at 10:00 AM. In so doing, eXtensible Markup Language (XML) (not visible to the user) is commonly used to represent contact information, such as an address book, each of which may be delimited with the string <contact> at the beginning of the string of contacts and </contact> at the end of the string. Inside one of the contact strings, <name> and </name> may be used to identify a name of a “buddy” or contact. Presence information, bracketed by additional delimiters, may be stored with the contact information. SIP has been identified as a suitable vehicle for publishing one's presence information and for receiving updates regarding a buddy's presence. HTTP has been identified as a suitable vehicle for managing one's buddy lists. So for presence and buddy list management, SIP and HTTP messages are launched and the message bodies may be XML documents.
Consequently, even with all these improvements in the art of providing compression techniques and virtual and other machines for providing compression/decompression in accordance with alleged unlimited flexibility, there remains an opportunity to facilitate, if not to optimize, the use of compression via application, for example, of static dictionaries and other techniques for compressing various signals, bytecode, SIP and HTTP messages, XML documents and other data signals used in a wireless communications network environment where the need for compression is the greatest.